package com.cdks.wuxiu.api.mapper;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.cdks.wuxiu.api.model.dto.UserInfoDTO;
import com.cdks.wuxiu.api.model.dto.UserListDTO;
import com.cdks.wuxiu.entity.mysql.UserBaseInfo;

import io.lettuce.core.dynamic.annotation.Param;

/**
 * 用户基本信息表 Mapper 接口
 */
public interface UserBaseInfoMapper extends BaseMapper<UserBaseInfo> {
    UserInfoDTO getInfoWithFocus(@Param("userId") long userId, @Param("fansId") long fansId);
    UserInfoDTO getInfoWithStatis(@Param("userId") long userId);
    UserInfoDTO getInfoWithBalance(@Param("userId") long userId, @Param("expire") long expire);

    UserBaseInfo getInviterInfo(@Param("userId") long userId);
    
    List<UserListDTO> getUserList(@Param("offset") int offset, @Param("pageSize") int pageSize, @Param("self") long self, @Param("sex") int sex, @Param("role") int role, @Param("userType") int userType);

    int setListenerInfo(@Param("userId") long userId, @Param("rate") int rate, @Param("level") int level);
    int updateStatus(@Param("userId") long userId, @Param("status") int status);
    int updateOnlineStatus(@Param("userId") long userId, @Param("onlineStatus") int onlineStatus);
}
